#!/bin/bash

# 修复 PublicApproach 导入路径问题脚本

# 确保在正确的目录执行
cd /usr/local/nginx/html/prod/dz || {
    echo "无法切换到应用目录，脚本退出"
    exit 1
}

# 检查文件是否存在
if [[ ! -f app/modules1/get_Allvendor.py ]]; then
    echo "get_Allvendor.py 文件不存在，请检查文件路径"
    exit 1
fi

# 修复导入路径
echo "修复 get_Allvendor.py 中的导入路径..."
sed -i 's/from PublicApproach import get_token_result/from app.modules1.PublicApproach import get_token_result/g' app/modules1/get_Allvendor.py

# 验证修改是否成功
if grep -q 'from app.modules1.PublicApproach import get_token_result' app/modules1/get_Allvendor.py; then
    echo "导入路径修复成功"
else
    echo "导入路径修复失败，尝试使用相对导入..."
    sed -i 's/from PublicApproach import get_token_result/from .PublicApproach import get_token_result/g' app/modules1/get_Allvendor.py
    if grep -q 'from .PublicApproach import get_token_result' app/modules1/get_Allvendor.py; then
        echo "相对导入路径修复成功"
    else
        echo "导入路径修复失败，请手动检查文件"
        exit 1
    fi
fi

# 检查是否有其他文件也有类似导入问题
echo "检查其他可能有类似导入问题的文件..."
find app -name "*.py" | xargs grep -l 'from PublicApproach' | while read file; do
    echo "发现文件 $file 中可能有类似导入问题"
    echo "建议修复 $file 中的导入路径"
    echo "可以使用命令: sed -i 's/from PublicApproach/from app.modules1.PublicApproach/g' $file"
    echo "或者: sed -i 's/from PublicApproach/from .PublicApproach/g' $file"
done

echo "脚本执行完成，尝试启动应用..."